//Thursday, October 29 2009
#include <iostream>
#include <string>
#include <vector>
#include <map>
#include <queue>
#include <math.h>
#include <sstream>
#include <algorithm>

using namespace std;

class FeudaliasBattle
{
public:
	double getMinimumTime(vector <int> baseX, vector <int> baseY, vector <int> siloX, vector <int> siloY, int takeOffTime, int rechargeTime, int missileSpeed)
	{
		double d11 = dist(baseX[0], baseY[0], siloX[0], siloY[0]) / (double)missileSpeed;
		//cout << d11 << endl;
		double d12 = dist(baseX[1], baseY[1], siloX[1], siloY[1]) / (double)missileSpeed;
		//cout << d12 << endl;
		double d21 = dist(baseX[0], baseY[0], siloX[1], siloY[1]) / (double)missileSpeed;
		//cout << d21 << endl;
		double d22 = dist(baseX[1], baseY[1], siloX[0], siloY[0]) / (double)missileSpeed;
		//cout << d22 << endl;
		double take = 1.0*takeOffTime/60.0;
		double Min;
		Min = take + max(1.0*d11, 1.0*d22 + rechargeTime + take);
		Min = min(Min, take + max(1.0*d22, 1.0*d11 + rechargeTime + take));
		cout << Min << endl;

		Min = min(Min, take + max(1.0*d12, 1.0*d21 + rechargeTime + take));
		Min = min(Min, take + max(1.0*d21, 1.0*d12 + rechargeTime + take));
		cout << Min << endl;

		Min = min(Min, 1.0*max(d11, d12) + take);
		Min = min(Min, 1.0*max(d21, d22) + take);
		cout << Min << endl;

		return Min;
	}
	double dist(double x, double y, double x1, double y1)
	{
		//cout << sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1)) << endl;
		return sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));
	}
};